runtime.schedt.nmspinning (field)
16 uses
runtime (current package)
mgcpacer.go#L716: if sched.npidle.Load() != 0 && sched.nmspinning.Load() == 0 {
proc.go#L1075: sched.nmspinning.Add(1)
proc.go#L3152: if sched.nmspinning.Load()+sched.npidle.Load() == 0 && sched.nmspinning.CompareAndSwap(0, 1) { // TODO: fast atomic
proc.go#L3215: if sched.nmspinning.Load() != 0 || !sched.nmspinning.CompareAndSwap(0, 1) {
proc.go#L3230: if sched.nmspinning.Add(-1) < 0 {
proc.go#L3306: if sched.nmspinning.Add(-1) < 0 {
proc.go#L3517: if mp.spinning || 2*sched.nmspinning.Load() < gomaxprocs-sched.npidle.Load() {
proc.go#L3661: if sched.nmspinning.Add(-1) < 0 {
proc.go#L4027: nmspinning := sched.nmspinning.Add(-1)
proc.go#L6452: sched.nmspinning.Add(1)
proc.go#L6703: if runqempty(pp) && sched.nmspinning.Load()+sched.npidle.Load() > 0 && pd.syscallwhen+10*1000*1000 > now {
proc.go#L6906: print("SCHED ", (now-starttime)/1e6, "ms: gomaxprocs=", gomaxprocs, " idleprocs=", sched.npidle.Load(), " threads=", mcount(), " spinningthreads=", sched.nmspinning.Load(), " needspinning=", sched.needspinning.Load(), " idlethreads=", sched.nmidle, " runqueue=", sched.runq.size)
proc.go#L7944: if i >= active_spin || numCPUStartup <= 1 || gomaxprocs <= sched.npidle.Load()+sched.nmspinning.Load()+1 {
runtime2.go#L954: nmspinning atomic.Int32 // See "Worker thread parking/unparking" comment in proc.go.
 |
The pages are generated with Golds v0.8.4. (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |